package com.water.guider.highlight

import android.graphics.Canvas
import android.graphics.Paint

/**
 * Specifies a shape of the target (e.g circle, rectangle).
 * Implementations of this interface will be responsible to draw the shape
 * at specified center point (x, y).
 */
interface IHighlight {

    /**
     * 绘制高亮区域的抽象,具体绘制结果由其实现类体现,无动画效果.
     */
    fun draw(canvas: Canvas, paint: Paint, x: Int, y: Int)

    /**
     * 绘制高亮区域的抽象,具体绘制结果由其实现类体现.
     * @param canvas 画布
     * @param paint 画笔
     * @param x 中心点儿的x坐标.
     * @param y 中心点儿的y坐标.
     * @param value 动画渐变值
     */
    fun draw(canvas: Canvas, paint: Paint, x: Int, y: Int, value: Int)

    var width: Int

    var height: Int

    val max: Int

    fun init()

    var ringWidth : Int
}